package com.cr.admin.system.service;

import com.cr.admin.system.pojo.dto.*;
import com.cr.admin.system.pojo.entity.SysUser;
import com.cr.admin.system.pojo.vo.SysUserDetailVO;

import java.util.List;

public interface ISysUserService {

    void insert(SysUserAddParam sysUserAddParam);

    void deleteByIds(List<Long> ids);

    void updateById(SysUserUpdateParam sysUserUpdateParam);

    void updateStatus(Long id, Integer status);

    void resetPassword(Long id);

    SysUserDetailVO selectById(Long id);

    List<SysUser> selectList(SysUserQuery query);

    List<SysUser> selectListForExport();

    SysUserDetailVO selectProfile(Long userId);

    void updateProfile(Long userId, SysUserProfileParam sysUserProfileParam);

    void updatePassword(Long userId, SysUserPasswordParam sysUserPasswordParam);

    void updateAvatar(Long userId, String avatar);

}
